// 高阶函数 - 函数作为参数

function forEach(array, fn) {
    for (let i=0;i<array.length;i++) {
        fn(array[i])
    }
}

// 测试
// let arr = [1,2,3,4,5,6,6,7]
// forEach(arr, function(item) {
//     console.log(item)
// })

function filter (array, fn) {
    let result = []
    for (let i = 0;i<array.length;i++) {
        if (fn(array[i])) {
            result.push(array[i])
        }
    }
    return result
}

// 测试
// let arr = [1,2,3,4,5,6,7,8,910,10]
// let r = filter(arr, function(item) {
//     return item % 2 === 0
// })
// console.log(r)
